Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

API diff between .NET 8 Preview 6 and .NET 8 Preview 7 #8675

Merged
merged 4 commits into from
Aug 9, 2023

Conversation

carlossanlop
Copy link
Member

Known issues:

  • The AsmDiff tool sometimes skips adding { or {}. Please provide a GitHub suggestion in this PR so I can correct it. arcade#10981
  • The AsmDiff tool shows APIs with decorating attribute changes as removed and re-added, instead of showing only the API. Please ignore this, it might be confusing but technically it's not incorrect. I have an issue to track this: arcade#13814

Repos area owners:

Libraries area owners:

  • System @dotnet/area-system-runtime

  • System.Collections @dotnet/area-system-collections

  • System.Diagnostics.Metrics @tommcdon @noahfalk

  • System.Net @dotnet/ncl

  • System.Numerics @dotnet/area-system-numerics

  • System.Reflection @dotnet/area-system-reflection

  • System.Runtime.CompilerServices: @dotnet/area-system-runtime-compilerservices

  • System.Runtime.InteropServices @dotnet/interop-contrib

  • System.Runtime.Intrinsics @dotnet/area-system-runtime-intrinsics @lewing @radekdoulik

  • System.Security @dotnet/area-system-security

  • System.Text.Json @dotnet/area-system-text-json

  • System.Text @dotnet/area-system-text-encoding

  • System.Xml @dotnet/area-system-xml

  • Microsoft.Extensions.DependencyInjection @dotnet/area-extensions-dependencyinjection

  • Microsoft.Extensions.Diagnostics.Metrics @tommcdon @noahfalk

  • Microsoft.Extensions.Hosting @dotnet/area-extensions-hosting

  • Microsoft.Extensions.Http.Logging @dotnet/area-extensions-logging @dotnet/ncl

  • Microsoft.Extensions.Options @dotnet/area-extensions-options

@carlossanlop carlossanlop self-assigned this Aug 8, 2023
@@ -0,0 +1,64 @@
# System.Numerics
Copy link
Member

@tannergooding tannergooding Aug 8, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

System.Numerics LGTM.

It's namely the addition of the IUtf8SpanParsable interface and the "left handed" matrix creation APIs

@@ -0,0 +1,31 @@
# System.Runtime.CompilerServices
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

System.Runtime.CompilerServices LGTM. New attributes were exposed so Roslyn doesn't have to generate internal polyfills in every assembly.

@@ -0,0 +1,87 @@
# System.Runtime.Intrinsics.Wasm
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

System.Runtime.Intrinsics.Wasm LGTM

CC. @radekdoulik

@@ -0,0 +1,161 @@
# System
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

System LGTM.

Namely addition of the IUtf8SpanParsable interface


- public static FrozenSet<T> ToFrozenSet<T>(this IEnumerable<T> source, IEqualityComparer<T>? comparer, bool optimizeForReading);

}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

public static class ImmutableStack {
+ public static ImmutableStack<T> Create<T>(ReadOnlySpan<T> items);
}
}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

``` diff
namespace System.Text.Unicode {
public static class Utf8 {
+ public static bool IsValid(ReadOnlySpan<byte> value);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

+ public static class MeterFactoryExtensions {
+ public static Meter Create(this IMeterFactory meterFactory, string name, string? version = null, IEnumerable<KeyValuePair<string, object?>>? tags = null);
+ }
}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think these moved interfaces from one assembly to other assembly. but existed in preview 5 as I recall.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Was that movement expected, or are you saying the API diff tool has a bug?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The move is expected. If we are documenting the API diff difference should be noted as moved and not introduced APIs.

@tarekgh
Copy link
Member

tarekgh commented Aug 8, 2023

System.Diagnostics LGTM. I put a comment on System.Diagnostics.Metrics just in case need to address?

Copy link
Member

@adamsitnik adamsitnik left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

FrozenCollections ctor changes LGTM

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM for WPF diffs

@dreddy-work
Copy link
Member

WinForms LGTM.

@carlossanlop carlossanlop merged commit 4e390ca into dotnet:main Aug 9, 2023
3 checks passed
@carlossanlop carlossanlop deleted the ApiDiffPrev7 branch August 9, 2023 19:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants